package com.day09.ex03;

import java.util.ArrayList;
import java.util.Scanner;

public class StudentManager {
    public static void main(String[] args) {
        ArrayList<Student>array=new ArrayList<Student>();
        while(true){
            System.out.println("--------欢迎来到学生管理系统--------");
            System.out.println("1.添加学生");
            System.out.println("2.删除学生");
            System.out.println("3.修改学生");
            System.out.println("4.查询学生");
            System.out.println("5.退出");
            System.out.println("请输入您的选择：");
            Scanner sc=new Scanner(System.in);
            String line=sc.nextLine();
            switch(line){
                case"1":
                    addStudent(array);
                    break;
                    case"2":
                        deleteStudent(array);
                        break;
                        case"3":
                            updateStudent(array);
                            break;
                            case"4":
                                findAllStudent(array);
                                break;
                                case"5":
                                    System.out.println("感谢您的使用");
                                    System.exit(0);
                                    break;
            }
        }
    }
    public static void addStudent(ArrayList<Student>array){
        Scanner sc=new Scanner(System.in);
        String sid;
        while(true){
            System.out.println("请输入学生学号：");
            sid=sc.nextLine();
            boolean flag=isUsed(array,sid);
            if(flag){
                System.out.println("学号已被使用，请重新输入");
            }else{
                break;
            }
        }
        System.out.println("请输入学生姓名：");
        String name=sc.nextLine();
        System.out.println("请输入学生年龄：");
        String age=sc.nextLine();
        System.out.println("请输入学生地址：");
        String address=sc.nextLine();
        Student s=new Student();
        s.setSid(sid);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);
        array.add(s);
        System.out.println("添加成功");
    }
    public static boolean isUsed(ArrayList<Student>array,String sid){
        boolean flag=false;
        for (int i = 0; i < array.size(); i++) {
            Student s=array.get(i);
            if(s.getSid().equals(sid)){
                flag=true;
                break;
            }
        }
        return flag;
    }
    public static void findAllStudent(ArrayList<Student>array){
        if(array.size()==0){
            System.out.println("无信息，请先添加信息再查询");
            return ;
        }
        System.out.println("学号\t姓名\t年龄\t地址");
        for (int i = 0; i < array.size(); i++) {
            Student s=array.get(i);
            System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getAddress());
        }
    }
    public static void deleteStudent(ArrayList<Student>array){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要删除学生的学号：");
        String sid=sc.nextLine();
        int index=-1;
        for (int i = 0; i < array.size(); i++) {
            Student s=array.get(i);
            if(s.getSid().equals(sid)){
                index=i;
                break;
            }
        }
        if(index==-1){
            System.out.println("无此学生信息");}
            else{
                array.remove(index);
                System.out.println("删除成功");
            }
        }
        public static void updateStudent(ArrayList<Student>array){
            Scanner sc =new Scanner(System.in);
            System.out.println("请输入要修改学生的学号：");
            String sid=sc.nextLine();
            System.out.println("请输入要修改学生的姓名：");
            String name=sc.nextLine();
            System.out.println("请输入要修改学生的年龄：");
            String age=sc.nextLine();
            System.out.println("请输入要修改学生的地址：");
            String address=sc.nextLine();
            Student s=new Student();
            s.setSid(sid);
            s.setName(name);
            s.setAge(age);
            s.setAddress(address);
            for (int i = 0; i < array.size(); i++) {
                Student student=array.get(i);
                if(student.getSid().equals(sid)){
                    array.set(i,s);
                }
            }
            System.out.println("修改成功");
        }
    }

